import { getTag } from '../../.internal/lodash/getTag.js';
import { isObjectLike } from '../../.internal/lodash/isObjectLike.js';

/**
 * 
 * @desc 检查 value 是否是原始 boolean 类型或者对象。
 * @param {value(*)}  要检查的值
 * @return boolean 如果 value 是一个布尔值，那么返回 true，否则返回 false
 */
function isBoolean(value) {
	return (
		value === true ||
		value === false ||
		(isObjectLike(value) && getTag(value) === '[object Boolean]')
	);
}

export { isBoolean };